
#ifndef __TRANSFORMATIONEDITWIDGET_H__
#define __TRANSFORMATIONEDITWIDGET_H__

#include <QWidget>
#include <utils/transformer.h>
#include <ui_transformationeditwidget.h>

class TransformationEditWidget : public QWidget
{
  Q_OBJECT
private:
  Ui::TransformationEditWidget  _gui;

  ceTransformer*                _transformer;

  void ReadMatrix (ceMatrix4f& matrix);
private slots:
  void on_spinBoxTransX_valueChanged(double d);
  void on_spinBoxTransY_valueChanged(double d);
  void on_spinBoxTransZ_valueChanged(double d);
  void on_spinBoxRotX_valueChanged(double d);
  void on_spinBoxRotY_valueChanged(double d);
  void on_spinBoxRotZ_valueChanged(double d);

public:
  TransformationEditWidget(QWidget *parent = 0);

  void SetTransformer (ceTransformer* transformer);
  void UpdateGUI ();
signals:
  void TransformationChanged ();
  
public slots:
  void Apply ();
  void Reset ();
  
};

#endif // TRANSFORMATIONEDITWIDGET_H
